//
//  Dictionary+Extension.swift
//  ANOA
//
//  Created by 邱仙凯 on 2022/9/16.
//  Copyright © 2025 aowang. All rights reserved.
//

import UIKit
 // 深度拷贝 以 d1 为基础   d2 有的值就复制过来，如果d1 有  d2 有 以d2 为最终值
func deepMerge(_ d1: [String: Any], _ d2: [String: Any]) -> [String: Any] {
    var result = d1
    for (k2, v2) in d2 {
        if let v1 = result[k2] as? [String: Any], let v2 = v2 as? [String: Any] {
            result[k2] = deepMerge(v1, v2)
        } else {
            if any2Str(v2) != "" { // d2有值，就把d2的值拿过来
                result[k2] = v2
            }
            if any2Str(v2) == "" && any2Str(result[k2]) == "" {
                // 字典2没值， 字典1 也没值
                result[k2] = ""
            }
            
      // 留着一种情况，字典2  没值  但是字典1 有值，字典2 的空值不会覆盖掉字典1 的值
         }
    }
    return result
}
